package com.danjinwulian.device.service.impl;

import java.util.List;

import com.danjinwulian.common.core.domain.entity.IotTenant;
import com.danjinwulian.common.utils.DateUtils;
import com.danjinwulian.device.mapper.IotTenantMapper;
import com.danjinwulian.device.service.IIotTenantService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * 住客Service业务层处理
 * 
 * @author ken.h
 * @date 2022-08-23
 */
@Service
public class IotTenantServiceImpl implements IIotTenantService
{
    @Autowired
    private IotTenantMapper iotTenantMapper;

    @Override
    public IotTenant selectIotTenantByGzhopenid(String gzhopenid) {
        return iotTenantMapper.selectIotTenantByGzhopenid(gzhopenid);
    }

    @Override
    public IotTenant selectIotTenantByUnionid(String unionid) {
        return iotTenantMapper.selectIotTenantByUnionid(unionid);
    }

    /**
     * 查询住客
     * 
     * @param tenantId 住客主键
     * @return 住客
     */
    @Override
    public IotTenant selectIotTenantByTenantId(Long tenantId)
    {
        return iotTenantMapper.selectIotTenantByTenantId(tenantId);
    }

    /**
     * 查询住客列表
     * 
     * @param iotTenant 住客
     * @return 住客
     */
    @Override
    public List<IotTenant> selectIotTenantList(IotTenant iotTenant)
    {
        return iotTenantMapper.selectIotTenantList(iotTenant);
    }

    @Override
    public int selectIotTenantCount() {
        return iotTenantMapper.selectIotTenantCount();
    }

    /**
     * 新增住客
     * 
     * @param iotTenant 住客
     * @return 结果
     */
    @Override
    public int insertIotTenant(IotTenant iotTenant)
    {
        iotTenant.setCreateTime(DateUtils.getNowDate());
        return iotTenantMapper.insertIotTenant(iotTenant);
    }

    /**
     * 修改住客
     * 
     * @param iotTenant 住客
     * @return 结果
     */
    @Override
    public int updateIotTenant(IotTenant iotTenant)
    {
        iotTenant.setUpdateTime(DateUtils.getNowDate());
        return iotTenantMapper.updateIotTenant(iotTenant);
    }

    /**
     * 批量删除住客
     * 
     * @param tenantIds 需要删除的住客主键
     * @return 结果
     */
    @Override
    public int deleteIotTenantByTenantIds(Long[] tenantIds)
    {
        return iotTenantMapper.deleteIotTenantByTenantIds(tenantIds);
    }

    /**
     * 删除住客信息
     * 
     * @param tenantId 住客主键
     * @return 结果
     */
    @Override
    public int deleteIotTenantByTenantId(Long tenantId)
    {
        return iotTenantMapper.deleteIotTenantByTenantId(tenantId);
    }
}
